import ButtonManager from './ButtonManager.js'; // 导入按钮管理模块

const RefreshStoreInfo = {
  buttonId: 'refresh', // 按钮 ID
  defaultText: '1. 刷新页面并监听请求', // 默认按钮文本

  // 初始化函数
  init() {
    document.getElementById(this.buttonId).addEventListener('click', this.handleClick.bind(this)); // 绑定点击事件
  },

  // 点击事件处理函数
  async handleClick() {
    ButtonManager.updateButtonState(this.buttonId, '1. 刷新页面并监听请求-加载中...', true); // 更新按钮状态为加载中
    ButtonManager.disableAllButtons(this.buttonId); // 禁用其他按钮

    try {
      const tabs = await chrome.tabs.query({ active: true, currentWindow: true }); // 获取当前标签页
      const tabId = tabs[0].id;

      // 刷新当前标签页
      await chrome.tabs.reload(tabId);

      // 通知后台脚本开始监听指定接口的请求头
      const response = await chrome.runtime.sendMessage({
        action: "startListening",
        targetUrl: "https://seller.kuajingmaihuo.com/bg/quiet/api/mms/account/menu"
      });

      console.log("后台脚本响应:", response); // 打印后台脚本的响应
    } catch (error) {
      console.error("刷新页面失败:", error); // 捕获错误
    } finally {
      ButtonManager.resetButtonState(this.buttonId, this.defaultText); // 恢复按钮状态
      ButtonManager.enableAllButtons(); // 启用所有按钮
    }
  },
};

export default RefreshStoreInfo; // 导出模块